We see (in other figures) that different teams have similar high classification performance. Is this similar performance due to selection of the same feature sets?
If we see teams picking different features, this suggests that there are multiple biomarkers that can predict cancer subtype well. An alternative explanation if we see teams picking different features, is that perhaps there is some relationship (correlation, biological pathway connection, etc.) between features so in a sense the teams are picking the “same” features if they are correlated.
In this analysis we will address the first part: are groups picking the same features?
TODO: And we will dabble in exploring feature relationships (through dissimilarity). From clustering on a dissimilarity matrix.The preprocessing and generation of these files was conducted in a custom python pipeline. A summary of the pipeline is:
Note in calculating z-scores, NAs were omitted
###### Hardcoded
cancer <- 'BRCA'
df <- fread('../data/figure_panel_b/BRCA_fts_by_VALUE.tsv') %>% as.data.frame()
df_fts <- fread('../data/figure_panel_b/BRCA_fts_by_TEAM.tsv')%>% as.data.frame()
mappings <- fread('../data/figure_panel_b/hallmarks.tsv') %>% as.data.frame()
######
Scaling data - METH, GEXP, and MIR
Non-scaled data - MUTA, CNVR
I want to see the differences between features. Data was scaled - all samples for a given feature have mean 0 and sd 1. then ran through normal pipeline
##### hardcoded
yes_scale <- c('N:METH' , 'N:GEXP','N:MIR') # which fts to scale
#####
####
# Main
####
# pre <- c('I:CNVR', 'N:METH' , 'N:GEXP', 'B:MUTA', 'N:MIR')
pre <- c('N:GEXP') # TODO remove this from dev
for (prefix in pre){
# A. Order by subtype
df_transform <- df %>% arrange(Labels)
# B. Column annotation
column_ha <- HeatmapAnnotation(
Subtype = df_transform$Labels,
na_col = 'grey',
col = list(
Subtype = c(
"BRCA_1" = 'orange',
"BRCA_2"='sienna1',
"BRCA_3"='red',
"BRCA_4"='red4'
)
)
)
# C. Select data type
df_transform <- df_transform %>%
select(-Labels) %>%
select(-all_of(cancer)) %>%
select(starts_with(prefix))
mat <- df_transform %>%
as.matrix() %>%
t()
print(prefix)
n_fts <- nrow(mat)
print(n_fts)
# 1. Heatmap that applies clustering we want
# second heatmap same row/col order but with added annotation bars
# scale if appropriate
if (prefix %in% yes_scale){
mat <- scale(t(mat), center=TRUE, scale=TRUE) #each ft row will have mean 0, sd 1. omit NAs
mat <- t(mat) #but flip for heatmap looks
}
fig <- Heatmap(
mat,
name = 'first heatmap',
cluster_rows = TRUE,
cluster_columns = FALSE,
show_row_names = FALSE,
show_column_names = FALSE,
column_title = 'Samples',
row_title = 'Features',
top_annotation = column_ha
)
# draw(fig) # dont need to draw
####
# Add team annotation bar
####
# Ordering
# 1. Get order of features post heatmap clustering
heatmap_order <- row_order(fig) # index vector
ftnames_order <- c() # featurename vector
for (i in heatmap_order){
add_ft <- rownames(mat)[i]
ftnames_order <- c(ftnames_order, add_ft)
}
print(ftnames_order)
# 2. Get new matrix that is ordered by heatmap clustering
mat2 <- mat[match(ftnames_order, rownames(mat)),]
# Build annotation bars of teams feature sets.
# 1. df of all teams. match ft order in heatmap
team_df<- df_fts %>% filter(featureID %in% ftnames_order) %>% arrange(match(featureID, ftnames_order))
# 2. Pull just the team of interest
jadbio <- team_df %>% pull('gnosis_1_BRCA') %>% as.character()
cforest <- team_df %>% pull('CF|All_Top 100_BRCA') %>% as.character()
aklimate <- team_df %>% pull('AKLIMATE_BRCA_reduced_model_1000_feature_set_BRCA') %>% as.character()
subscope <- team_df %>% pull('nn_jg_2020-03-20_top1kfreq:BRCA_BRCA') %>% as.character()
skgrid <- team_df %>% pull('fbedeBIC_BRCA') %>% as.character()
team_list <- rowAnnotation(
JadBIO = jadbio,
CForest = cforest,
AKLIMATE = aklimate,
SubSCOPE = subscope,
SKGrid = skgrid,
col = list(
JadBIO = c('0' = "snow2", '1' = "palevioletred1"),
CForest = c('0' = "snow2", '1' = "mediumpurple1"),
AKLIMATE = c('0' = "snow2", '1' = "cadetblue1"),
SubSCOPE = c('0' = "snow2", '1' = "palegreen2"),
SKGrid = c('0' = "snow2", '1' = "rosybrown2")
),
show_legend = FALSE
)
# 3. Heatmap
fig <- Heatmap(
mat2, #each col will have mean 0, sd 1
name = prefix,
cluster_rows = TRUE,
cluster_columns = FALSE,
show_row_names = FALSE,
show_column_names = FALSE,
column_title = 'Samples',
row_title = 'Features',
top_annotation = column_ha,
right_annotation = team_list,
)
draw(fig)
#####
# unit tests
#####
# sanity check 1 - that the row orders are the same in the two heatmaps
assert('Assertion Error: order of feature rows on heatmap and final heatmap not same', rownames(mat2) == ftnames_order)
# sanity check 2 - directly compare heatmap rows
heatmap_order <- row_order(fig) # index vector
ftnames_order2 <- c() # featurename vector
for (i in heatmap_order){
add_ft <- rownames(mat2)[i]
ftnames_order2 <- c(ftnames_order2, add_ft)
}
assert('Assertion Error: order of feature rows on heatmap and final heatmap not same', ftnames_order2 == ftnames_order)
print(paste('Distance metric = ', fig@row_dend_param$distance, '. Method = ', fig@row_dend_param$method, sep=' '))
}
## [1] "N:GEXP"
## [1] 1682
## [1] "N:GEXP::ARHGAP19:84986:" "N:GEXP::ZDHHC6:64429:"
## [3] "N:GEXP::MEIS1:4211:" "N:GEXP::FAM150B:285016:"
## [5] "N:GEXP::ZNF204P:7754:" "N:GEXP::PRSS16:10279:"
## [7] "N:GEXP::C9orf125:84302:" "N:GEXP::RHCG:51458:"
## [9] "N:GEXP::KLF5:688:" "N:GEXP::INSR:3643:"
## [11] "N:GEXP::KLK4:9622:" "N:GEXP::SLC34A2:10568:"
## [13] "N:GEXP::AOX1:316:" "N:GEXP::MTUS1:57509:"
## [15] "N:GEXP::FGG:2266:" "N:GEXP::RNF128:79589:"
## [17] "N:GEXP::SLC16A9:220963:" "N:GEXP::ZBTB7C:201501:"
## [19] "N:GEXP::PIK3R1:5295:" "N:GEXP::ZFP36L1:677:"
## [21] "N:GEXP::RTN4:57142:" "N:GEXP::HADHB:3032:"
## [23] "N:GEXP::LAPTM4A:9741:" "N:GEXP::TAX1BP1:8887:"
## [25] "N:GEXP::OGDH:4967:" "N:GEXP::PPL:5493:"
## [27] "N:GEXP::UQCRC2:7385:" "N:GEXP::SLC30A2:7780:"
## [29] "N:GEXP::CEL:1056:" "N:GEXP::DMD:1756:"
## [31] "N:GEXP::CLCA2:9635:" "N:GEXP::FAM83A:84985:"
## [33] "N:GEXP::FABP7:2173:" "N:GEXP::ACE2:59272:"
## [35] "N:GEXP::INHBB:3625:" "N:GEXP::CLU:1191:"
## [37] "N:GEXP::C1orf116:79098:" "N:GEXP::IRF6:3664:"
## [39] "N:GEXP::OAT:4942:" "N:GEXP::CEACAM1:634:"
## [41] "N:GEXP::ALDH9A1:223:" "N:GEXP::ATP1B1:481:"
## [43] "N:GEXP::DLX5:1749:" "N:GEXP::ID4:3400:"
## [45] "N:GEXP::PRSS33:260429:" "N:GEXP::ZG16B:124220:"
## [47] "N:GEXP::DUSP6:1848:" "N:GEXP::CSGALNACT1:55790:"
## [49] "N:GEXP::MRAP2:112609:" "N:GEXP::ABCC2:1244:"
## [51] "N:GEXP::C2CD4A:145741:" "N:GEXP::CXCL17:284340:"
## [53] "N:GEXP::C1QTNF2:114898:" "N:GEXP::ATP13A5:344905:"
## [55] "N:GEXP::HOXB13:10481:" "N:GEXP::KLK3:354:"
## [57] "N:GEXP::C6orf182:285753:" "N:GEXP::CD164:8763:"
## [59] "N:GEXP::CBX5:23468:" "N:GEXP::CHD4:1108:"
## [61] "N:GEXP::DDX3X:1654:" "N:GEXP::USP9X:8239:"
## [63] "N:GEXP::IGF2R:3482:" "N:GEXP::NDST1:3340:"
## [65] "N:GEXP::PCDH1:5097:" "N:GEXP::MECP2:4204:"
## [67] "N:GEXP::MLEC:9761:" "N:GEXP::AMIGO2:347902:"
## [69] "N:GEXP::BAALC:79870:" "N:GEXP::BCL2L13:23786:"
## [71] "N:GEXP::ST13:6767:" "N:GEXP::CA8:767:"
## [73] "N:GEXP::DSP:1832:" "N:GEXP::MBOAT1:154141:"
## [75] "N:GEXP::STOM:2040:" "N:GEXP::C4orf34:201895:"
## [77] "N:GEXP::UGDH:7358:" "N:GEXP::SLC38A2:54407:"
## [79] "N:GEXP::GJA1:2697:" "N:GEXP::RAB31:11031:"
## [81] "N:GEXP::MEGF10:84466:" "N:GEXP::NTRK2:4915:"
## [83] "N:GEXP::NTS:4922:" "N:GEXP::RASSF9:9182:"
## [85] "N:GEXP::LOC642587:642587:" "N:GEXP::FZD10:11211:"
## [87] "N:GEXP::FAM5B:57795:" "N:GEXP::SCGB1D2:10647:"
## [89] "N:GEXP::SCGB2A2:4250:" "N:GEXP::RGS5:8490:"
## [91] "N:GEXP::MAOA:4128:" "N:GEXP::FCGBP:8857:"
## [93] "N:GEXP::CX3CR1:1524:" "N:GEXP::ITM2B:9445:"
## [95] "N:GEXP::LPAR6:10161:" "N:GEXP::ISCU:23479:"
## [97] "N:GEXP::RUNX1:861:" "N:GEXP::JAK1:3716:"
## [99] "N:GEXP::WLS:79971:" "N:GEXP::COL4A5:1287:"
## [101] "N:GEXP::COL4A6:1288:" "N:GEXP::TCN1:6947:"
## [103] "N:GEXP::PDGFD:80310:" "N:GEXP::SCN2B:6327:"
## [105] "N:GEXP::AKAP12:9590:" "N:GEXP::ARHGAP1:392:"
## [107] "N:GEXP::CRY2:1408:" "N:GEXP::PRICKLE2:166336:"
## [109] "N:GEXP::LIMA1:51474:" "N:GEXP::SYNPO2:171024:"
## [111] "N:GEXP::LMOD1:25802:" "N:GEXP::CNN1:1264:"
## [113] "N:GEXP::MYH11:4629:" "N:GEXP::LOC645431:645431:"
## [115] "N:GEXP::TFPI2:7980:" "N:GEXP::PTHLH:5744:"
## [117] "N:GEXP::TMEM66:51669:" "N:GEXP::ASAH1:427:"
## [119] "N:GEXP::SPAG17:200162:" "N:GEXP::PDZRN3:23024:"
## [121] "N:GEXP::ENPP1:5167:" "N:GEXP::PGLYRP2:114770:"
## [123] "N:GEXP::PDZK1:5174:" "N:GEXP::ZNF385B:151126:"
## [125] "N:GEXP::TUBA3D:113457:" "N:GEXP::ELOVL5:60481:"
## [127] "N:GEXP::SERPINA5:5104:" "N:GEXP::SERPINA3:12:"
## [129] "N:GEXP::GRB14:2888:" "N:GEXP::PLAT:5327:"
## [131] "N:GEXP::PCDHGC3:5098:" "N:GEXP::PDGFA:5154:"
## [133] "N:GEXP::GPC1:2817:" "N:GEXP::VIM:7431:"
## [135] "N:GEXP::ITGA5:3678:" "N:GEXP::TGFBI:7045:"
## [137] "N:GEXP::IGFBP3:3486:" "N:GEXP::C12orf54:121273:"
## [139] "N:GEXP::MMP11:4320:" "N:GEXP::MXRA7:439921:"
## [141] "N:GEXP::FSTL1:11167:" "N:GEXP::SGCD:6444:"
## [143] "N:GEXP::PALLD:23022:" "N:GEXP::SPOCK1:6695:"
## [145] "N:GEXP::GPX8:493869:" "N:GEXP::SPARC:6678:"
## [147] "N:GEXP::LAMB1:3912:" "N:GEXP::ZFHX4:79776:"
## [149] "N:GEXP::TSPAN18:90139:" "N:GEXP::COL4A1:1282:"
## [151] "N:GEXP::TLN1:7094:" "N:GEXP::SDC3:9672:"
## [153] "N:GEXP::CDH23:64072:" "N:GEXP::SNCA:6622:"
## [155] "N:GEXP::PROS1:5627:" "N:GEXP::LPCAT2:54947:"
## [157] "N:GEXP::SGK1:6446:" "N:GEXP::ETS2:2114:"
## [159] "N:GEXP::A2M:2:" "N:GEXP::BOC:91653:"
## [161] "N:GEXP::SPRY2:10253:" "N:GEXP::PCOLCE2:26577:"
## [163] "N:GEXP::CAV1:857:" "N:GEXP::CAV2:858:"
## [165] "N:GEXP::AHR:196:" "N:GEXP::ARRDC3:57561:"
## [167] "N:GEXP::MBNL1:4154:" "N:GEXP::ABI3BP:25890:"
## [169] "N:GEXP::FCER1A:2205:" "N:GEXP::ARHGAP20:57569:"
## [171] "N:GEXP::F2RL2:2151:" "N:GEXP::COL14A1:7373:"
## [173] "N:GEXP::MFAP4:4239:" "N:GEXP::SPARCL1:8404:"
## [175] "N:GEXP::GEM:2669:" "N:GEXP::ALDH1A1:216:"
## [177] "N:GEXP::DST:667:" "N:GEXP::MAMDC2:256691:"
## [179] "N:GEXP::COL17A1:1308:" "N:GEXP::TP63:8626:"
## [181] "N:GEXP::F3:2152:" "N:GEXP::KLHL29:114818:"
## [183] "N:GEXP::EDN3:1908:" "N:GEXP::FAM189A2:9413:"
## [185] "N:GEXP::NGFR:4804:" "N:GEXP::PAMR1:25891:"
## [187] "N:GEXP::CLDN19:149461:" "N:GEXP::CLDN11:5010:"
## [189] "N:GEXP::HLF:3131:" "N:GEXP::GFAP:2670:"
## [191] "N:GEXP::ALDH1A2:8854:" "N:GEXP::THBS4:7060:"
## [193] "N:GEXP::NPTX2:4885:" "N:GEXP::IGSF10:285313:"
## [195] "N:GEXP::WIF1:11197:" "N:GEXP::FBN2:2201:"
## [197] "N:GEXP::LRRC4B:94030:" "N:GEXP::C17orf103:256302:"
## [199] "N:GEXP::HSPA2:3306:" "N:GEXP::STARD10:10809:"
## [201] "N:GEXP::BCAM:4059:" "N:GEXP::ARRB1:408:"
## [203] "N:GEXP::TFF1:7031:" "N:GEXP::TFF3:7033:"
## [205] "N:GEXP::PRR15:222171:" "N:GEXP::C1orf64:149563:"
## [207] "N:GEXP::TRIM3:10612:" "N:GEXP::ARFIP2:23647:"
## [209] "N:GEXP::ST6GALNAC2:10610:" "N:GEXP::C3orf52:79669:"
## [211] "N:GEXP::EPHA10:284656:" "N:GEXP::TMEM184A:202915:"
## [213] "N:GEXP::CCDC64:92558:" "N:GEXP::PCP2:126006:"
## [215] "N:GEXP::KIAA1543:57662:" "N:GEXP::ATP6AP1:537:"
## [217] "N:GEXP::SPRYD3:84926:" "N:GEXP::NAPA:8775:"
## [219] "N:GEXP::TMC4:147798:" "N:GEXP::FBP1:2203:"
## [221] "N:GEXP::G6PC3:92579:" "N:GEXP::FLJ45983:399717:"
## [223] "N:GEXP::H2AFJ:55766:" "N:GEXP::WBP2:23558:"
## [225] "N:GEXP::FDXR:2232:" "N:GEXP::SLC9A3R1:9368:"
## [227] "N:GEXP::C17orf28:283987:" "N:GEXP::GDF15:9518:"
## [229] "N:GEXP::SERINC2:347735:" "N:GEXP::FLOT1:10211:"
## [231] "N:GEXP::SPDEF:25803:" "N:GEXP::C9orf7:11094:"
## [233] "N:GEXP::ZNF385A:25946:" "N:GEXP::KRT18:3875:"
## [235] "N:GEXP::KRT8:3856:" "N:GEXP::C19orf21:126353:"
## [237] "N:GEXP::BCL2L1:598:" "N:GEXP::CHMP4B:128866:"
## [239] "N:GEXP::TSPAN12:23554:" "N:GEXP::KCND2:3751:"
## [241] "N:GEXP::ABHD2:11057:" "N:GEXP::ASTN2:23245:"
## [243] "N:GEXP::RET:5979:" "N:GEXP::MYT1:4661:"
## [245] "N:GEXP::CACNA2D2:9254:" "N:GEXP::FSTL4:23105:"
## [247] "N:GEXP::PCSK6:5046:" "N:GEXP::BMPR1B:658:"
## [249] "N:GEXP::AGTR1:185:" "N:GEXP::FSIP1:161835:"
## [251] "N:GEXP::MAGED2:10916:" "N:GEXP::FAAH2:158584:"
## [253] "N:GEXP::DNAJC12:56521:" "N:GEXP::LOC145837:145837:"
## [255] "N:GEXP::CPB1:1360:" "N:GEXP::TCEA3:6920:"
## [257] "N:GEXP::BAG1:573:" "N:GEXP::TSPAN1:10103:"
## [259] "N:GEXP::GRIA1:2890:" "N:GEXP::STC1:6781:"
## [261] "N:GEXP::BCAS1:8537:" "N:GEXP::HK2:3099:"
## [263] "N:GEXP::DDR1:780:" "N:GEXP::ATP2A3:489:"
## [265] "N:GEXP::NXPH1:30010:" "N:GEXP::RAP1GAP:5909:"
## [267] "N:GEXP::PLEKHF2:79666:" "N:GEXP::TP53INP1:94241:"
## [269] "N:GEXP::CMBL:134147:" "N:GEXP::MARVELD2:153562:"
## [271] "N:GEXP::CCDC125:202243:" "N:GEXP::SLC22A5:6584:"
## [273] "N:GEXP::ADCY5:111:" "N:GEXP::TNRC6C:57690:"
## [275] "N:GEXP::HS6ST3:266722:" "N:GEXP::RNF43:54894:"
## [277] "N:GEXP::C17orf58:284018:" "N:GEXP::DCAF10:79269:"
## [279] "N:GEXP::ATXN7L3B:552889:" "N:GEXP::GLS2:27165:"
## [281] "N:GEXP::NRCAM:4897:" "N:GEXP::AKR7A3:22977:"
## [283] "N:GEXP::FBXL16:146330:" "N:GEXP::ABCA3:21:"
## [285] "N:GEXP::ARSG:22901:" "N:GEXP::SLC16A6:9120:"
## [287] "N:GEXP::SYTL4:94121:" "N:GEXP::ZNF703:80139:"
## [289] "N:GEXP::CCND1:595:" "N:GEXP::CPT1A:1374:"
## [291] "N:GEXP::SDC4:6385:" "N:GEXP::PIGT:51604:"
## [293] "N:GEXP::DBNDD2:55861:" "N:GEXP::PREX1:57580:"
## [295] "N:GEXP::NKAIN1:79570:" "N:GEXP::RIMS4:140730:"
## [297] "N:GEXP::KCNK15:60598:" "N:GEXP::CXXC5:51523:"
## [299] "N:GEXP::EEF1A2:1917:" "N:GEXP::LAMA5:3911:"
## [301] "N:GEXP::RHOBTB3:22836:" "N:GEXP::FAM198B:51313:"
## [303] "N:GEXP::STEAP4:79689:" "N:GEXP::IL20:50604:"
## [305] "N:GEXP::DTNA:1837:" "N:GEXP::ADCY1:107:"
## [307] "N:GEXP::IRS1:3667:" "N:GEXP::CELSR2:1952:"
## [309] "N:GEXP::SYTL5:94122:" "N:GEXP::SLC39A6:25800:"
## [311] "N:GEXP::SLC7A2:6542:" "N:GEXP::CLGN:1047:"
## [313] "N:GEXP::TSPAN13:27075:" "N:GEXP::AGR2:10551:"
## [315] "N:GEXP::TMEM59:9528:" "N:GEXP::KIAA1324:57535:"
## [317] "N:GEXP::PKIB:5570:" "N:GEXP::SERINC1:57515:"
## [319] "N:GEXP::CASC4:113201:" "N:GEXP::EID1:23741:"
## [321] "N:GEXP::CCNDBP1:23582:" "N:GEXP::INPP4B:8821:"
## [323] "N:GEXP::CCNG2:901:" "N:GEXP::GPD1L:23171:"
## [325] "N:GEXP::MPP7:143098:" "N:GEXP::KIAA1370:56204:"
## [327] "N:GEXP::RALGPS2:55103:" "N:GEXP::C5orf36:285600:"
## [329] "N:GEXP::EXOC6:54536:" "N:GEXP::ATP8B1:5205:"
## [331] "N:GEXP::RBM47:54502:" "N:GEXP::RNF103:7844:"
## [333] "N:GEXP::CD46:4179:" "N:GEXP::NUDT12:83594:"
## [335] "N:GEXP::CPEB2:132864:" "N:GEXP::CDK17:5128:"
## [337] "N:GEXP::APBB2:323:" "N:GEXP::LZTFL1:54585:"
## [339] "N:GEXP::WDR19:57728:" "N:GEXP::KLHDC1:122773:"
## [341] "N:GEXP::ZC3H6:376940:" "N:GEXP::C12orf72:254013:"
## [343] "N:GEXP::BCL2:596:" "N:GEXP::ZNF516:9658:"
## [345] "N:GEXP::KIAA1324L:222223:" "N:GEXP::DACH1:1602:"
## [347] "N:GEXP::ERBB4:2066:" "N:GEXP::AFF3:3899:"
## [349] "N:GEXP::TBC1D9:23158:" "N:GEXP::THSD4:79875:"
## [351] "N:GEXP::FOXA1:3169:" "N:GEXP::GATA3:2625:"
## [353] "N:GEXP::NUMA1:4926:" "N:GEXP::ZNF737:100129842:"
## [355] "N:GEXP::DNMBP:23268:" "N:GEXP::SIDT1:54847:"
## [357] "N:GEXP::FARP2:9855:" "N:GEXP::MEGF9:1955:"
## [359] "N:GEXP::ARHGEF38:54848:" "N:GEXP::GALNT10:55568:"
## [361] "N:GEXP::RAB27B:5874:" "N:GEXP::AR:367:"
## [363] "N:GEXP::SPTLC2:9517:" "N:GEXP::TOX3:27324:"
## [365] "N:GEXP::SLC2A10:81031:" "N:GEXP::ERGIC1:57222:"
## [367] "N:GEXP::SEC16A:9919:" "N:GEXP::C9orf152:401546:"
## [369] "N:GEXP::GALNT7:51809:" "N:GEXP::SLC44A4:80736:"
## [371] "N:GEXP::PRKAA2:5563:" "N:GEXP::GPR98:84059:"
## [373] "N:GEXP::ARMCX5:64860:" "N:GEXP::ARMCX2:9823:"
## [375] "N:GEXP::PHF15:23338:" "N:GEXP::GPR77:27202:"
## [377] "N:GEXP::RABEP1:9135:" "N:GEXP::ZBTB4:57659:"
## [379] "N:GEXP::LONRF2:164832:" "N:GEXP::PTPRT:11122:"
## [381] "N:GEXP::SPEF2:79925:" "N:GEXP::NME5:8382:"
## [383] "N:GEXP::C10orf79:80217:" "N:GEXP::WDR65:149465:"
## [385] "N:GEXP::UBXN10:127733:" "N:GEXP::C14orf45:80127:"
## [387] "N:GEXP::C7orf63:79846:" "N:GEXP::CACNA1D:776:"
## [389] "N:GEXP::LRIG1:26018:" "N:GEXP::PGR:5241:"
## [391] "N:GEXP::PTGER3:5733:" "N:GEXP::TMEM26:219623:"
## [393] "N:GEXP::MYB:4602:" "N:GEXP::SHROOM3:57619:"
## [395] "N:GEXP::GREB1L:80000:" "N:GEXP::C1orf226:400793:"
## [397] "N:GEXP::EVL:51466:" "N:GEXP::AGR3:155465:"
## [399] "N:GEXP::SERPINA11:256394:" "N:GEXP::NAT1:9:"
## [401] "N:GEXP::ZNF552:79818:" "N:GEXP::XBP1:7494:"
## [403] "N:GEXP::CELSR1:9620:" "N:GEXP::CT62:196993:"
## [405] "N:GEXP::SLC7A4:6545:" "N:GEXP::SCUBE2:57758:"
## [407] "N:GEXP::STK32B:55351:" "N:GEXP::ABCC8:6833:"
## [409] "N:GEXP::KCNJ11:3767:" "N:GEXP::PARK2:5071:"
## [411] "N:GEXP::BDNFOS:497258:" "N:GEXP::GTF2IRD2P1:401375:"
## [413] "N:GEXP::GTF2IRD2:84163:" "N:GEXP::C8orf79:57604:"
## [415] "N:GEXP::SPATA18:132671:" "N:GEXP::CCNG1:900:"
## [417] "N:GEXP::C10orf26:54838:" "N:GEXP::C10orf32:119032:"
## [419] "N:GEXP::NTN4:59277:" "N:GEXP::CYBRD1:79901:"
## [421] "N:GEXP::KIF13B:23303:" "N:GEXP::NOSTRIN:115677:"
## [423] "N:GEXP::DUSP4:1846:" "N:GEXP::CGNL1:84952:"
## [425] "N:GEXP::ITPR1:3708:" "N:GEXP::C6orf155:79940:"
## [427] "N:GEXP::SLC44A5:204962:" "N:GEXP::SLC40A1:30061:"
## [429] "N:GEXP::SORL1:6653:" "N:GEXP::SEMA6A:57556:"
## [431] "N:GEXP::LTF:4057:" "N:GEXP::CFB:629:"
## [433] "N:GEXP::APOF:319:" "N:GEXP::BMP4:652:"
## [435] "N:GEXP::ARSD:414:" "N:GEXP::IL20RA:53832:"
## [437] "N:GEXP::REEP1:65055:" "N:GEXP::ENPP5:59084:"
## [439] "N:GEXP::EPB41L4A:64097:" "N:GEXP::IQGAP2:10788:"
## [441] "N:GEXP::SYTL2:54843:" "N:GEXP::LDLRAD1:388633:"
## [443] "N:GEXP::ACOX2:8309:" "N:GEXP::CAPN13:92291:"
## [445] "N:GEXP::TMEM63C:57156:" "N:GEXP::GAD1:2571:"
## [447] "N:GEXP::LRRC6:23639:" "N:GEXP::TMC5:79838:"
## [449] "N:GEXP::C1orf88:128344:" "N:GEXP::CDC20B:166979:"
## [451] "N:GEXP::ZMYND10:51364:" "N:GEXP::LRRC46:90506:"
## [453] "N:GEXP::CCDC65:85478:" "N:GEXP::C5orf49:134121:"
## [455] "N:GEXP::NEAT1:283131:" "N:GEXP::MALAT1:378938:"
## [457] "N:GEXP::ANKRD30A:91074:" "N:GEXP::SRRM2:23524:"
## [459] "N:GEXP::XIST:7503:" "N:GEXP::DDX17:10521:"
## [461] "N:GEXP::NPY1R:4886:" "N:GEXP::PMAIP1:5366:"
## [463] "N:GEXP::LOC647979:647979:" "N:GEXP::RBM39:9584:"
## [465] "N:GEXP::EPB41L1:2036:" "N:GEXP::RAB5B:5869:"
## [467] "N:GEXP::DAZAP2:9802:" "N:GEXP::TMBIM6:7009:"
## [469] "N:GEXP::ARF3:377:" "N:GEXP::SMARCC2:6601:"
## [471] "N:GEXP::ERBB3:2065:" "N:GEXP::SUOX:6821:"
## [473] "N:GEXP::SSH3:54961:" "N:GEXP::LASS2:29956:"
## [475] "N:GEXP::FAM63A:55793:" "N:GEXP::ANXA9:8416:"
## [477] "N:GEXP::SCCPDH:51097:" "N:GEXP::C6orf211:79624:"
## [479] "N:GEXP::ESR1:2099:" "N:GEXP::C6orf97:80129:"
## [481] "N:GEXP::RERG:85004:" "N:GEXP::STC2:8614:"
## [483] "N:GEXP::MAPT:4137:" "N:GEXP::KDM4B:23030:"
## [485] "N:GEXP::ARL3:403:" "N:GEXP::DNALI1:7802:"
## [487] "N:GEXP::ASB13:79754:" "N:GEXP::CYP4F11:57834:"
## [489] "N:GEXP::ABAT:18:" "N:GEXP::ADCY9:115:"
## [491] "N:GEXP::TPBG:7162:" "N:GEXP::TRPS1:7227:"
## [493] "N:GEXP::GRPR:2925:" "N:GEXP::GFRA1:2674:"
## [495] "N:GEXP::PARD6B:84612:" "N:GEXP::VAV3:10451:"
## [497] "N:GEXP::ELOVL2:54898:" "N:GEXP::UGCG:7357:"
## [499] "N:GEXP::PRLR:5618:" "N:GEXP::HOOK1:51361:"
## [501] "N:GEXP::DUSP5:1847:" "N:GEXP::ACADSB:36:"
## [503] "N:GEXP::PRDX3:10935:" "N:GEXP::ADAMTS15:170689:"
## [505] "N:GEXP::IGFBP2:3485:" "N:GEXP::EGF:1950:"
## [507] "N:GEXP::PPP1R3C:5507:" "N:GEXP::TMC3:342125:"
## [509] "N:GEXP::HEXIM1:10614:" "N:GEXP::C2orf55:343990:"
## [511] "N:GEXP::SYT17:51760:" "N:GEXP::DEGS2:123099:"
## [513] "N:GEXP::MGC3771:81854:" "N:GEXP::SCNN1A:6337:"
## [515] "N:GEXP::PNPLA4:8228:" "N:GEXP::TMEM25:84866:"
## [517] "N:GEXP::CYB5A:1528:" "N:GEXP::GATM:2628:"
## [519] "N:GEXP::GPR160:26996:" "N:GEXP::LRRC31:79782:"
## [521] "N:GEXP::FAM129A:116496:" "N:GEXP::NKX3-1:4824:"
## [523] "N:GEXP::EPHX1:2052:" "N:GEXP::SRP9:6726:"
## [525] "N:GEXP::ESYT1:23344:" "N:GEXP::LDLR:3949:"
## [527] "N:GEXP::NFE2L1:4779:" "N:GEXP::ITGA3:3675:"
## [529] "N:GEXP::ABCC3:8714:" "N:GEXP::TOB1:10140:"
## [531] "N:GEXP::HSPB8:26353:" "N:GEXP::VAT1:10493:"
## [533] "N:GEXP::CDKN1A:1026:" "N:GEXP::MYH14:79784:"
## [535] "N:GEXP::KRT80:144501:" "N:GEXP::SEZ6L2:26470:"
## [537] "N:GEXP::CPLX2:10814:" "N:GEXP::KCNK3:3777:"
## [539] "N:GEXP::KCNH2:3757:" "N:GEXP::CRMP1:1400:"
## [541] "N:GEXP::LOC283174:283174:" "N:GEXP::OLFM1:10439:"
## [543] "N:GEXP::PPP2R2C:5522:" "N:GEXP::EIF4A2:1974:"
## [545] "N:GEXP::IRS2:8660:" "N:GEXP::MFSD6:54842:"
## [547] "N:GEXP::SYT7:9066:" "N:GEXP::SLC1A2:6506:"
## [549] "N:GEXP::SCG2:7857:" "N:GEXP::SUSD4:55061:"
## [551] "N:GEXP::CHGB:1114:" "N:GEXP::GRIA3:2892:"
## [553] "N:GEXP::SLC5A8:160728:" "N:GEXP::MAPK4:5596:"
## [555] "N:GEXP::FGF2:2247:" "N:GEXP::PVALB:5816:"
## [557] "N:GEXP::ALB:213:" "N:GEXP::PAQR5:54852:"
## [559] "N:GEXP::PPP1R9A:55607:" "N:GEXP::PCLO:27445:"
## [561] "N:GEXP::MYEF2:50804:" "N:GEXP::DARS2:55157:"
## [563] "N:GEXP::IARS2:55699:" "N:GEXP::UGT2B15:7366:"
## [565] "N:GEXP::CHAD:1101:" "N:GEXP::TRH:7200:"
## [567] "N:GEXP::TPRG1:285386:" "N:GEXP::ALDH3A2:224:"
## [569] "N:GEXP::SIAH2:6478:" "N:GEXP::SYBU:55638:"
## [571] "N:GEXP::COX6C:1345:" "N:GEXP::RGS22:26166:"
## [573] "N:GEXP::TSPAN3:10099:" "N:GEXP::EMB:133418:"
## [575] "N:GEXP::SLC27A2:11001:" "N:GEXP::UBE2D3:7323:"
## [577] "N:GEXP::C9orf106:414318:" "N:GEXP::FABP3:2170:"
## [579] "N:GEXP::KCNK2:3776:" "N:GEXP::UGT1A7:54577:"
## [581] "N:GEXP::WWP1:11059:" "N:GEXP::SLC7A13:157724:"
## [583] "N:GEXP::TCEAL4:79921:" "N:GEXP::TCEAL1:9338:"
## [585] "N:GEXP::MORF4L2:9643:" "N:GEXP::BEX1:55859:"
## [587] "N:GEXP::C10orf82:143379:" "N:GEXP::FGFR1:2260:"
## [589] "N:GEXP::CACNA1H:8912:" "N:GEXP::SLC38A11:151258:"
## [591] "N:GEXP::ARHGAP36:158763:" "N:GEXP::CYP2B6:1555:"
## [593] "N:GEXP::GHR:2690:" "N:GEXP::SEPP1:6414:"
## [595] "N:GEXP::IL6ST:3572:" "N:GEXP::RANBP3L:202151:"
## [597] "N:GEXP::GSTM2:2946:" "N:GEXP::GSTM3:2947:"
## [599] "N:GEXP::TADA2B:93624:" "N:GEXP::MRFAP1:93621:"
## [601] "N:GEXP::WFS1:7466:" "N:GEXP::ANXA6:309:"
## [603] "N:GEXP::GREB1:9687:" "N:GEXP::TTC39A:22996:"
## [605] "N:GEXP::BTF3:689:" "N:GEXP::IGBP1:3476:"
## [607] "N:GEXP::EIF4B:1975:" "N:GEXP::PCBP2:5094:"
## [609] "N:GEXP::PXN:5829:" "N:GEXP::RNF10:9921:"
## [611] "N:GEXP::TBC1D9B:23061:" "N:GEXP::SQSTM1:8878:"
## [613] "N:GEXP::FFAR2:2867:" "N:GEXP::DHRS2:10202:"
## [615] "N:GEXP::RBBP7:5931:" "N:GEXP::REPS2:9185:"
## [617] "N:GEXP::SLC24A3:57419:" "N:GEXP::DSTN:11034:"
## [619] "N:GEXP::GPRC5A:9052:" "N:GEXP::ADIPOR2:79602:"
## [621] "N:GEXP::C20orf30:29058:" "N:GEXP::SRXN1:140809:"
## [623] "N:GEXP::CYP4B1:1580:" "N:GEXP::CDSN:1041:"
## [625] "N:GEXP::TBX3:6926:" "N:GEXP::SLC7A8:23428:"
## [627] "N:GEXP::GALNT6:11226:" "N:GEXP::SLC4A8:9498:"
## [629] "N:GEXP::INPP5J:27124:" "N:GEXP::CLSTN2:64084:"
## [631] "N:GEXP::KLHDC7A:127707:" "N:GEXP::CAMK2N1:55450:"
## [633] "N:GEXP::KCNK1:3775:" "N:GEXP::KNDC1:85442:"
## [635] "N:GEXP::THPO:7066:" "N:GEXP::CHRD:8646:"
## [637] "N:GEXP::HPX:3263:" "N:GEXP::MUC6:4588:"
## [639] "N:GEXP::IGF1R:3480:" "N:GEXP::ZNF217:7764:"
## [641] "N:GEXP::RAB11A:8766:" "N:GEXP::PTPLAD1:51495:"
## [643] "N:GEXP::CA12:771:" "N:GEXP::EZR:7430:"
## [645] "N:GEXP::TAF7:6879:" "N:GEXP::REEP5:7905:"
## [647] "N:GEXP::SKP1:6500:" "N:GEXP::NDFIP1:80762:"
## [649] "N:GEXP::SAR1B:51128:" "N:GEXP::MDM2:4193:"
## [651] "N:GEXP::TMBIM4:51643:" "N:GEXP::MSX2:4488:"
## [653] "N:GEXP::ATP6V1G1:9550:" "N:GEXP::ETNK2:55224:"
## [655] "N:GEXP::C3orf14:57415:" "N:GEXP::CSNK1A1:1452:"
## [657] "N:GEXP::MATR3:9782:" "N:GEXP::PJA2:9867:"
## [659] "N:GEXP::CTNNA1:1495:" "N:GEXP::CAST:831:"
## [661] "N:GEXP::PDE8B:8622:" "N:GEXP::TPP1:1200:"
## [663] "N:GEXP::GNS:2799:" "N:GEXP::MCCC2:64087:"
## [665] "N:GEXP::SH3BGRL:6451:" "N:GEXP::DHCR24:1718:"
## [667] "N:GEXP::C5orf30:90355:" "N:GEXP::MUM1L1:139221:"
## [669] "N:GEXP::KITLG:4254:" "N:GEXP::HPGDS:27306:"
## [671] "N:GEXP::CPA3:1359:" "N:GEXP::ARL6IP5:10550:"
## [673] "N:GEXP::RHOA:387:" "N:GEXP::CTDSP1:58190:"
## [675] "N:GEXP::PNPLA2:57104:" "N:GEXP::RAPGEF3:10411:"
## [677] "N:GEXP::TENC1:23371:" "N:GEXP::ST6GALNAC6:30815:"
## [679] "N:GEXP::TNFSF12:8742:" "N:GEXP::GPIHBP1:338328:"
## [681] "N:GEXP::KANK3:256949:" "N:GEXP::DARC:2532:"
## [683] "N:GEXP::PLAC9:219348:" "N:GEXP::CLEC3B:7123:"
## [685] "N:GEXP::LOC728392:728392:" "N:GEXP::PHYHIP:9796:"
## [687] "N:GEXP::GSN:2934:" "N:GEXP::LTBP4:8425:"
## [689] "N:GEXP::F10:2159:" "N:GEXP::ADAM33:80332:"
## [691] "N:GEXP::MRGPRF:116535:" "N:GEXP::MEG3:55384:"
## [693] "N:GEXP::C1orf70:339453:" "N:GEXP::MMP23B:8510:"
## [695] "N:GEXP::RHOBTB2:23221:" "N:GEXP::LTBP3:4054:"
## [697] "N:GEXP::LRPAP1:4043:" "N:GEXP::PINK1:65018:"
## [699] "N:GEXP::METTL7A:25840:" "N:GEXP::TSC22D3:1831:"
## [701] "N:GEXP::TXNIP:10628:" "N:GEXP::PDK4:5166:"
## [703] "N:GEXP::C7:730:" "N:GEXP::TSPAN7:7102:"
## [705] "N:GEXP::MYCT1:80177:" "N:GEXP::ARHGEF15:22899:"
## [707] "N:GEXP::TNXB:7148:" "N:GEXP::ABCA8:10351:"
## [709] "N:GEXP::ITGA7:3679:" "N:GEXP::AQP1:358:"
## [711] "N:GEXP::HSPB6:126393:" "N:GEXP::HSPB7:27129:"
## [713] "N:GEXP::G0S2:50486:" "N:GEXP::FABP4:2167:"
## [715] "N:GEXP::ADH1B:125:" "N:GEXP::GPD1:2819:"
## [717] "N:GEXP::CD36:948:" "N:GEXP::DEFB132:400830:"
## [719] "N:GEXP::GCOM1:145781:" "N:GEXP::HOXD8:3234:"
## [721] "N:GEXP::HOXC6:3223:" "N:GEXP::LOC400043:400043:"
## [723] "N:GEXP::IGFBP4:3487:" "N:GEXP::C20orf103:24141:"
## [725] "N:GEXP::TGFB3:7043:" "N:GEXP::GLIS2:84662:"
## [727] "N:GEXP::GAS6:2621:" "N:GEXP::CSDC2:27254:"
## [729] "N:GEXP::IGFBP7:3490:" "N:GEXP::LRRC32:2615:"
## [731] "N:GEXP::SFRP2:6423:" "N:GEXP::CNRIP1:25927:"
## [733] "N:GEXP::HTRA1:5654:" "N:GEXP::C5orf62:85027:"
## [735] "N:GEXP::SYNPO:11346:" "N:GEXP::EHD2:30846:"
## [737] "N:GEXP::MN1:4330:" "N:GEXP::ADAMTS8:11095:"
## [739] "N:GEXP::MYBPC1:4604:" "N:GEXP::RPS25:6230:"
## [741] "N:GEXP::RPL10:6134:" "N:GEXP::RPS4X:6191:"
## [743] "N:GEXP::RPS14:6208:" "N:GEXP::RPS23:6228:"
## [745] "N:GEXP::GNB2L1:10399:" "N:GEXP::RPL29:6159:"
## [747] "N:GEXP::RPL7A:6130:" "N:GEXP::NACA:4666:"
## [749] "N:GEXP::RPL6:6128:" "N:GEXP::TPT1:7178:"
## [751] "N:GEXP::SLC25A6:293:" "N:GEXP::EEF2:1938:"
## [753] "N:GEXP::CTSD:1509:" "N:GEXP::F7:2155:"
## [755] "N:GEXP::HMGCS2:3158:" "N:GEXP::FMOD:2331:"
## [757] "N:GEXP::CREB3L1:90993:" "N:GEXP::TM7SF2:7108:"
## [759] "N:GEXP::IGF2:3481:" "N:GEXP::UCP2:7351:"
## [761] "N:GEXP::ALDH2:217:" "N:GEXP::ECE1:1889:"
## [763] "N:GEXP::KIAA1522:57648:" "N:GEXP::MKNK2:2872:"
## [765] "N:GEXP::SEMA4B:10509:" "N:GEXP::FGD3:89846:"
## [767] "N:GEXP::CYP21A2:1589:" "N:GEXP::C4A:720:"
## [769] "N:GEXP::MVP:9961:" "N:GEXP::TSPAN15:23555:"
## [771] "N:GEXP::CCDC74B:91409:" "N:GEXP::CCDC74A:90557:"
## [773] "N:GEXP::CARD10:29775:" "N:GEXP::TMPRSS6:164656:"
## [775] "N:GEXP::SEMA3B:7869:" "N:GEXP::PGPEP1:54858:"
## [777] "N:GEXP::C3orf18:51161:" "N:GEXP::CPLX1:10815:"
## [779] "N:GEXP::LRRC56:115399:" "N:GEXP::CIRBP:1153:"
## [781] "N:GEXP::PCSK4:54760:" "N:GEXP::MLPH:79083:"
## [783] "N:GEXP::RAB17:64284:" "N:GEXP::FAAH:2166:"
## [785] "N:GEXP::KIF12:113220:" "N:GEXP::PLCD3:113026:"
## [787] "N:GEXP::STAT6:6778:" "N:GEXP::RARG:5916:"
## [789] "N:GEXP::ARHGEF17:9828:" "N:GEXP::ARAP1:116985:"
## [791] "N:GEXP::SEC14L2:23541:" "N:GEXP::LOC389033:389033:"
## [793] "N:GEXP::CYP4F22:126410:" "N:GEXP::CYP4F8:11283:"
## [795] "N:GEXP::RND1:27289:" "N:GEXP::RHOB:388:"
## [797] "N:GEXP::KLF2:10365:" "N:GEXP::JUN:3725:"
## [799] "N:GEXP::JUNB:3726:" "N:GEXP::DUSP1:1843:"
## [801] "N:GEXP::NR4A1:3164:" "N:GEXP::BTG2:7832:"
## [803] "N:GEXP::TPSB2:64499:" "N:GEXP::GGT6:124975:"
## [805] "N:GEXP::EPHX2:2053:" "N:GEXP::PHYHD1:254295:"
## [807] "N:GEXP::IGSF22:283284:" "N:GEXP::C5orf45:51149:"
## [809] "N:GEXP::GAMT:2593:" "N:GEXP::REEP6:92840:"
## [811] "N:GEXP::TTC36:143941:" "N:GEXP::IGFALS:3483:"
## [813] "N:GEXP::C9orf9:11092:" "N:GEXP::C9orf98:158067:"
## [815] "N:GEXP::C9orf116:138162:" "N:GEXP::C16orf71:146562:"
## [817] "N:GEXP::CCDC96:257236:" "N:GEXP::LRRC50:123872:"
## [819] "N:GEXP::C19orf51:352909:" "N:GEXP::NUDT6:11162:"
## [821] "N:GEXP::ZNF763:284390:" "N:GEXP::KLHDC2:23588:"
## [823] "N:GEXP::VIPR1:7433:" "N:GEXP::CCDC71:64925:"
## [825] "N:GEXP::NISCH:11188:" "N:GEXP::LAMB2:3913:"
## [827] "N:GEXP::RAI2:10742:" "N:GEXP::NXNL2:158046:"
## [829] "N:GEXP::SUSD3:203328:" "N:GEXP::ZSCAN18:65982:"
## [831] "N:GEXP::FAM127A:8933:" "N:GEXP::BSG:682:"
## [833] "N:GEXP::BCAP31:10134:" "N:GEXP::SSR4:6748:"
## [835] "N:GEXP::CTSA:5476:" "N:GEXP::UBC:7316:"
## [837] "N:GEXP::SOD1:6647:" "N:GEXP::PRDX1:5052:"
## [839] "N:GEXP::COX6A1:1337:" "N:GEXP::ARPC3:10094:"
## [841] "N:GEXP::DYNLL1:8655:" "N:GEXP::FTH1:2495:"
## [843] "N:GEXP::ACTB:60:" "N:GEXP::TMSL3:7117:"
## [845] "N:GEXP::NPC2:10577:" "N:GEXP::APOC1:341:"
## [847] "N:GEXP::FTL:2512:" "N:GEXP::ATP6V0E1:8992:"
## [849] "N:GEXP::C5orf32:84418:" "N:GEXP::COX7C:1350:"
## [851] "N:GEXP::ATP5G2:517:" "N:GEXP::PFDN5:5204:"
## [853] "N:GEXP::SRP14:6727:" "N:GEXP::RAC1:5879:"
## [855] "N:GEXP::NDUFA4:4697:" "N:GEXP::RHBDD2:57414:"
## [857] "N:GEXP::PRDX2:7001:" "N:GEXP::PEBP1:5037:"
## [859] "N:GEXP::UBXN6:80700:" "N:GEXP::OAZ1:4946:"
## [861] "N:GEXP::AES:166:" "N:GEXP::TSIX:9383:"
## [863] "N:GEXP::MYL6:4637:" "N:GEXP::CD63:967:"
## [865] "N:GEXP::SERF2:10169:" "N:GEXP::PRDX5:25824:"
## [867] "N:GEXP::NDUFA13:51079:" "N:GEXP::ARL6IP4:51329:"
## [869] "N:GEXP::TCEB2:6923:" "N:GEXP::FKBP8:23770:"
## [871] "N:GEXP::COX4I1:1327:" "N:GEXP::RNASEK:440400:"
## [873] "N:GEXP::ERP29:10961:" "N:GEXP::CBLC:23624:"
## [875] "N:GEXP::CAPNS1:826:" "N:GEXP::ECH1:1891:"
## [877] "N:GEXP::RPS15:6209:" "N:GEXP::RPL36:25873:"
## [879] "N:GEXP::RPL24:6152:" "N:GEXP::RPL34:6164:"
## [881] "N:GEXP::RPS11:6205:" "N:GEXP::CCDC64B:146439:"
## [883] "N:GEXP::CCDC61:729440:" "N:GEXP::EPS8L1:54869:"
## [885] "N:GEXP::ACADVL:37:" "N:GEXP::JUND:3727:"
## [887] "N:GEXP::HSPB1:3315:" "N:GEXP::?:653553:"
## [889] "N:GEXP::SHC2:25759:" "N:GEXP::PALM:5064:"
## [891] "N:GEXP::PHLDA3:23612:" "N:GEXP::C1orf230:284485:"
## [893] "N:GEXP::SLC16A11:162515:" "N:GEXP::C10orf116:10974:"
## [895] "N:GEXP::SNCG:6623:" "N:GEXP::ALDOA:226:"
## [897] "N:GEXP::ATP6V0C:527:" "N:GEXP::TUFM:7284:"
## [899] "N:GEXP::NUPR1:26471:" "N:GEXP::CARHSP1:23589:"
## [901] "N:GEXP::FBXO2:26232:" "N:GEXP::DUSP15:128853:"
## [903] "N:GEXP::GPR143:4935:" "N:GEXP::TMED9:54732:"
## [905] "N:GEXP::LONP1:9361:" "N:GEXP::UBB:7314:"
## [907] "N:GEXP::CHCHD2:51142:" "N:GEXP::RPL8:6132:"
## [909] "N:GEXP::CYC1:1537:" "N:GEXP::RPS20:6224:"
## [911] "N:GEXP::UQCRB:7381:" "N:GEXP::HINT1:3094:"
## [913] "N:GEXP::C6orf129:154467:" "N:GEXP::SNRPB:6628:"
## [915] "N:GEXP::MIF:4282:" "N:GEXP::PTMS:5763:"
## [917] "N:GEXP::CALM3:808:" "N:GEXP::ARF1:375:"
## [919] "N:GEXP::RNF187:149603:" "N:GEXP::PRDX6:9588:"
## [921] "N:GEXP::HNRNPC:3183:" "N:GEXP::HNRNPL:3191:"
## [923] "N:GEXP::RARRES3:5920:" "N:GEXP::PSME1:5720:"
## [925] "N:GEXP::HLA-C:3107:" "N:GEXP::HLA-A:3105:"
## [927] "N:GEXP::HLA-B:3106:" "N:GEXP::B2M:567:"
## [929] "N:GEXP::HLA-E:3133:" "N:GEXP::BST2:684:"
## [931] "N:GEXP::IFI6:2537:" "N:GEXP::LGALS3BP:3959:"
## [933] "N:GEXP::NFKBIA:4792:" "N:GEXP::SOD2:6648:"
## [935] "N:GEXP::BCL2A1:597:" "N:GEXP::STAT5A:6776:"
## [937] "N:GEXP::CYP27A1:1593:" "N:GEXP::BTG1:694:"
## [939] "N:GEXP::CD22:933:" "N:GEXP::CXCR4:7852:"
## [941] "N:GEXP::TNIP1:10318:" "N:GEXP::TAPBP:6892:"
## [943] "N:GEXP::C3:718:" "N:GEXP::C1S:716:"
## [945] "N:GEXP::HLA-DRB5:3127:" "N:GEXP::HLA-DRB1:3123:"
## [947] "N:GEXP::TGM2:7052:" "N:GEXP::GBP2:2634:"
## [949] "N:GEXP::CSF1R:1436:" "N:GEXP::IFI30:10437:"
## [951] "N:GEXP::C1QA:712:" "N:GEXP::C1QC:714:"
## [953] "N:GEXP::HLA-DPA1:3113:" "N:GEXP::HLA-DRA:3122:"
## [955] "N:GEXP::CD74:972:" "N:GEXP::SELPLG:6404:"
## [957] "N:GEXP::PSAP:5660:" "N:GEXP::NRK:203447:"
## [959] "N:GEXP::FGFR4:2264:" "N:GEXP::TFAP2B:7021:"
## [961] "N:GEXP::CRAT:1384:" "N:GEXP::THRSP:7069:"
## [963] "N:GEXP::LRFN2:57497:" "N:GEXP::HRASLS2:54979:"
## [965] "N:GEXP::SREBF1:6720:" "N:GEXP::FASN:2194:"
## [967] "N:GEXP::TP53INP2:58476:" "N:GEXP::ABCA12:26154:"
## [969] "N:GEXP::SLC25A18:83733:" "N:GEXP::KMO:8564:"
## [971] "N:GEXP::ETFA:2108:" "N:GEXP::G6PD:2539:"
## [973] "N:GEXP::MPHOSPH6:10200:" "N:GEXP::GGCT:79017:"
## [975] "N:GEXP::C2orf54:79919:" "N:GEXP::ABCC11:85320:"
## [977] "N:GEXP::ALDH3B2:222:" "N:GEXP::RETSAT:54884:"
## [979] "N:GEXP::GGCX:2677:" "N:GEXP::PKDCC:91461:"
## [981] "N:GEXP::TWIST1:7291:" "N:GEXP::EMP3:2014:"
## [983] "N:GEXP::LGALS1:3956:" "N:GEXP::RARRES2:5919:"
## [985] "N:GEXP::EFEMP2:30008:" "N:GEXP::COL6A1:1291:"
## [987] "N:GEXP::SPON2:10417:" "N:GEXP::WISP2:8839:"
## [989] "N:GEXP::RNASE1:6035:" "N:GEXP::APOE:348:"
## [991] "N:GEXP::GPX1:2876:" "N:GEXP::TIMP1:7076:"
## [993] "N:GEXP::CST3:1471:" "N:GEXP::PLD3:23646:"
## [995] "N:GEXP::AP2A1:160:" "N:GEXP::MBOAT7:79143:"
## [997] "N:GEXP::C19orf63:284361:" "N:GEXP::PTOV1:53635:"
## [999] "N:GEXP::PPP2R1A:5518:" "N:GEXP::TMEM132A:54972:"
## [1001] "N:GEXP::QPRT:23475:" "N:GEXP::POR:5447:"
## [1003] "N:GEXP::GRINA:2907:" "N:GEXP::PLEC:5339:"
## [1005] "N:GEXP::DNM2:1785:" "N:GEXP::PLIN3:10226:"
## [1007] "N:GEXP::DNAJB1:3337:" "N:GEXP::TECR:9524:"
## [1009] "N:GEXP::PRKACA:5566:" "N:GEXP::FAM129B:64855:"
## [1011] "N:GEXP::TNKS1BP1:85456:" "N:GEXP::PLXNB2:23654:"
## [1013] "N:GEXP::SPNS2:124976:" "N:GEXP::ARHGAP23:57636:"
## [1015] "N:GEXP::PBXIP1:57326:" "N:GEXP::RRBP1:6238:"
## [1017] "N:GEXP::MAGED1:9500:" "N:GEXP::STRA6:64220:"
## [1019] "N:GEXP::RBP1:5947:" "N:GEXP::RNF186:54546:"
## [1021] "N:GEXP::IRX4:50805:" "N:GEXP::KCNMB1:3779:"
## [1023] "N:GEXP::ACTA2:59:" "N:GEXP::MYL9:10398:"
## [1025] "N:GEXP::TPM2:7169:" "N:GEXP::PNMAL2:57469:"
## [1027] "N:GEXP::CCDC8:83987:" "N:GEXP::ELN:2006:"
## [1029] "N:GEXP::CD9:928:" "N:GEXP::ATN1:1822:"
## [1031] "N:GEXP::GAPDH:2597:" "N:GEXP::TPI1:7167:"
## [1033] "N:GEXP::MLF2:8079:" "N:GEXP::CDH22:64405:"
## [1035] "N:GEXP::AGT:183:" "N:GEXP::MAP2:4133:"
## [1037] "N:GEXP::CCDC67:159989:" "N:GEXP::WNT11:7481:"
## [1039] "N:GEXP::PRR11:55771:" "N:GEXP::EFEMP1:2202:"
## [1041] "N:GEXP::TNFSF13B:10673:" "N:GEXP::PRSS12:8492:"
## [1043] "N:GEXP::CADM3:57863:" "N:GEXP::CPM:1368:"
## [1045] "N:GEXP::C4BPA:722:" "N:GEXP::ECEL1:9427:"
## [1047] "N:GEXP::RARRES1:5918:" "N:GEXP::SLC6A14:11254:"
## [1049] "N:GEXP::TACR1:6869:" "N:GEXP::KIT:3815:"
## [1051] "N:GEXP::FBLN5:10516:" "N:GEXP::TCF7L2:6934:"
## [1053] "N:GEXP::IL10RB:3588:" "N:GEXP::ARPC2:10109:"
## [1055] "N:GEXP::ANXA5:308:" "N:GEXP::SDCBP:6386:"
## [1057] "N:GEXP::ULBP3:79465:" "N:GEXP::ULBP2:80328:"
## [1059] "N:GEXP::ANXA3:306:" "N:GEXP::ANXA1:301:"
## [1061] "N:GEXP::CNN3:1266:" "N:GEXP::SLC39A14:23516:"
## [1063] "N:GEXP::HEPH:9843:" "N:GEXP::PLS3:5358:"
## [1065] "N:GEXP::PAM:5066:" "N:GEXP::C11orf41:25758:"
## [1067] "N:GEXP::CD59:966:" "N:GEXP::FZD9:8326:"
## [1069] "N:GEXP::MIA:8190:" "N:GEXP::GATA6:2627:"
## [1071] "N:GEXP::C5orf23:79614:" "N:GEXP::NPR3:4883:"
## [1073] "N:GEXP::FRZB:2487:" "N:GEXP::TSPYL5:85453:"
## [1075] "N:GEXP::SDC2:6383:" "N:GEXP::PGCP:10404:"
## [1077] "N:GEXP::TPD52L1:7164:" "N:GEXP::MGP:4256:"
## [1079] "N:GEXP::BBOX1:8424:" "N:GEXP::DEFB1:1672:"
## [1081] "N:GEXP::PHGDH:26227:" "N:GEXP::STAC2:342667:"
## [1083] "N:GEXP::GLB1L2:89944:" "N:GEXP::BEX2:84707:"
## [1085] "N:GEXP::NGFRAP1:27018:" "N:GEXP::APP:351:"
## [1087] "N:GEXP::PTN:5764:" "N:GEXP::C6orf15:29113:"
## [1089] "N:GEXP::CHI3L1:1116:" "N:GEXP::NEFH:4744:"
## [1091] "N:GEXP::CCND2:894:" "N:GEXP::ARID5A:10865:"
## [1093] "N:GEXP::IRX1:79192:" "N:GEXP::TUBB4:10382:"
## [1095] "N:GEXP::CPA4:51200:" "N:GEXP::LEPREL1:55214:"
## [1097] "N:GEXP::RERGL:79785:" "N:GEXP::ARL4A:10124:"
## [1099] "N:GEXP::BHLHE41:79365:" "N:GEXP::C6orf105:84830:"
## [1101] "N:GEXP::SNCAIP:9627:" "N:GEXP::TUSC3:7991:"
## [1103] "N:GEXP::PNMAL1:55228:" "N:GEXP::PTPRZ1:5803:"
## [1105] "N:GEXP::C9orf170:401535:" "N:GEXP::CHST3:9469:"
## [1107] "N:GEXP::MFGE8:4240:" "N:GEXP::SYNM:23336:"
## [1109] "N:GEXP::LOXL4:84171:" "N:GEXP::ANGPTL7:10218:"
## [1111] "N:GEXP::C2orf40:84417:" "N:GEXP::COL9A2:1298:"
## [1113] "N:GEXP::VEPH1:79674:" "N:GEXP::SLC26A2:1836:"
## [1115] "N:GEXP::PTX3:5806:" "N:GEXP::ABCA13:154664:"
## [1117] "N:GEXP::SLC27A6:28965:" "N:GEXP::C6orf218:221718:"
## [1119] "N:GEXP::KLK7:5650:" "N:GEXP::NEFL:4747:"
## [1121] "N:GEXP::PLA2G4A:5321:" "N:GEXP::SCD5:79966:"
## [1123] "N:GEXP::GOLGA8A:23015:" "N:GEXP::ARHGEF10L:55160:"
## [1125] "N:GEXP::PLEKHG4:25894:" "N:GEXP::SAA1:6288:"
## [1127] "N:GEXP::FGFR2:2263:" "N:GEXP::HOXA7:3204:"
## [1129] "N:GEXP::EPB41L4B:54566:" "N:GEXP::ANK3:288:"
## [1131] "N:GEXP::EGFR:1956:" "N:GEXP::ZP2:7783:"
## [1133] "N:GEXP::CLDN10:9071:" "N:GEXP::DLK1:8788:"
## [1135] "N:GEXP::AKR1B1:231:" "N:GEXP::TUBB2B:347733:"
## [1137] "N:GEXP::LDOC1:23641:" "N:GEXP::CKMT1A:548596:"
## [1139] "N:GEXP::CKMT1B:1159:" "N:GEXP::ASS1:445:"
## [1141] "N:GEXP::PCP4L1:654790:" "N:GEXP::ORM1:5004:"
## [1143] "N:GEXP::PI3:5266:" "N:GEXP::CXCL1:2919:"
## [1145] "N:GEXP::LY6D:8581:" "N:GEXP::LCN2:3934:"
## [1147] "N:GEXP::S100A8:6279:" "N:GEXP::PDZK1IP1:10158:"
## [1149] "N:GEXP::AP2M1:1173:" "N:GEXP::EIF4G1:1981:"
## [1151] "N:GEXP::UGT1A6:54578:" "N:GEXP::SLPI:6590:"
## [1153] "N:GEXP::AKR1C2:1646:" "N:GEXP::AKR1C1:1645:"
## [1155] "N:GEXP::AKR1C3:8644:" "N:GEXP::OBSL1:23363:"
## [1157] "N:GEXP::CALB2:794:" "N:GEXP::CCND3:896:"
## [1159] "N:GEXP::MMP15:4324:" "N:GEXP::TAX1BP3:30851:"
## [1161] "N:GEXP::TUBB6:84617:" "N:GEXP::LMNA:4000:"
## [1163] "N:GEXP::TNFRSF12A:51330:" "N:GEXP::SDC1:6382:"
## [1165] "N:GEXP::KRT7:3855:" "N:GEXP::LY6E:4061:"
## [1167] "N:GEXP::LYNX1:66004:" "N:GEXP::SDHA:6389:"
## [1169] "N:GEXP::DAP:1611:" "N:GEXP::LPCAT1:79888:"
## [1171] "N:GEXP::BAIAP2L1:55971:" "N:GEXP::VEGFA:7422:"
## [1173] "N:GEXP::PLXNB3:5365:" "N:GEXP::SLC6A8:6535:"
## [1175] "N:GEXP::ACTG1:71:" "N:GEXP::NARF:26502:"
## [1177] "N:GEXP::SLC25A19:60386:" "N:GEXP::MT2A:4502:"
## [1179] "N:GEXP::MT1E:4493:" "N:GEXP::FGFBP1:9982:"
## [1181] "N:GEXP::KRT5:3852:" "N:GEXP::S100A2:6273:"
## [1183] "N:GEXP::CA9:768:" "N:GEXP::DDIT4:54541:"
## [1185] "N:GEXP::LAMB3:3914:" "N:GEXP::LAMC2:3918:"
## [1187] "N:GEXP::FSCN1:6624:" "N:GEXP::KRT6B:3854:"
## [1189] "N:GEXP::KRT14:3861:" "N:GEXP::KRT16:3868:"
## [1191] "N:GEXP::MALL:7851:" "N:GEXP::FERMT1:55612:"
## [1193] "N:GEXP::CTSL2:1515:" "N:GEXP::PLP2:5355:"
## [1195] "N:GEXP::ARTN:9048:" "N:GEXP::C12orf75:387882:"
## [1197] "N:GEXP::CCNE1:898:" "N:GEXP::A2ML1:144568:"
## [1199] "N:GEXP::SLC5A6:8884:" "N:GEXP::TCF7L1:83439:"
## [1201] "N:GEXP::GABRP:2568:" "N:GEXP::TTLL4:9654:"
## [1203] "N:GEXP::PVR:5817:" "N:GEXP::PFKP:5214:"
## [1205] "N:GEXP::C9orf30:91283:" "N:GEXP::PSAT1:29968:"
## [1207] "N:GEXP::IFRD1:3475:" "N:GEXP::NFIL3:4783:"
## [1209] "N:GEXP::IGF2BP2:10644:" "N:GEXP::MOBKL2B:79817:"
## [1211] "N:GEXP::CCDC82:79780:" "N:GEXP::RBMS1:5937:"
## [1213] "N:GEXP::PAPSS1:9061:" "N:GEXP::CXCL16:58191:"
## [1215] "N:GEXP::PPP1R14C:81706:" "N:GEXP::PRKX:5613:"
## [1217] "N:GEXP::MTHFD1L:25902:" "N:GEXP::PLEKHG1:57480:"
## [1219] "N:GEXP::SLC43A3:29015:" "N:GEXP::SFT2D2:375035:"
## [1221] "N:GEXP::STAC:6769:" "N:GEXP::L3MBTL4:91133:"
## [1223] "N:GEXP::ANXA8L2:244:" "N:GEXP::ANXA8:653145:"
## [1225] "N:GEXP::DSC3:1825:" "N:GEXP::PERP:64065:"
## [1227] "N:GEXP::TRIM29:23650:" "N:GEXP::SERPINB5:5268:"
## [1229] "N:GEXP::PPARA:5465:" "N:GEXP::C22orf23:84645:"
## [1231] "N:GEXP::MICALL1:85377:" "N:GEXP::ITGB8:3696:"
## [1233] "N:GEXP::C6orf195:154386:" "N:GEXP::DSC2:1824:"
## [1235] "N:GEXP::PRTFDC1:56952:" "N:GEXP::DSG2:1829:"
## [1237] "N:GEXP::CYP39A1:51302:" "N:GEXP::CSRP2:1466:"
## [1239] "N:GEXP::MYO10:4651:" "N:GEXP::LDHB:3945:"
## [1241] "N:GEXP::CSDA:8531:" "N:GEXP::VANGL2:57216:"
## [1243] "N:GEXP::ARHGEF2:9181:" "N:GEXP::PLEKHG4B:153478:"
## [1245] "N:GEXP::SLC25A37:51312:" "N:GEXP::SOX9:6662:"
## [1247] "N:GEXP::KCNN4:3783:" "N:GEXP::CMTM7:112616:"
## [1249] "N:GEXP::NDRG2:57447:" "N:GEXP::SOX10:6663:"
## [1251] "N:GEXP::SFRP1:6422:" "N:GEXP::C10orf90:118611:"
## [1253] "N:GEXP::GPM6B:2824:" "N:GEXP::C2orf88:84281:"
## [1255] "N:GEXP::NFIB:4781:" "N:GEXP::GDF5:8200:"
## [1257] "N:GEXP::KCTD14:65987:" "N:GEXP::ACTG2:72:"
## [1259] "N:GEXP::GSTA1:2938:" "N:GEXP::LEMD1:93273:"
## [1261] "N:GEXP::HRCT1:646962:" "N:GEXP::KRT81:3887:"
## [1263] "N:GEXP::KRT17:3872:" "N:GEXP::ACTN4:81:"
## [1265] "N:GEXP::C8orf47:203111:" "N:GEXP::SOSTDC1:25928:"
## [1267] "N:GEXP::CLDN1:9076:" "N:GEXP::CX3CL1:6376:"
## [1269] "N:GEXP::SLC9A6:10479:" "N:GEXP::LYN:4067:"
## [1271] "N:GEXP::SIRPA:140885:" "N:GEXP::C16orf57:79650:"
## [1273] "N:GEXP::CDH3:1001:" "N:GEXP::NCK2:8440:"
## [1275] "N:GEXP::PLOD1:5351:" "N:GEXP::ENO1:2023:"
## [1277] "N:GEXP::PADI2:11240:" "N:GEXP::HAPLN3:145864:"
## [1279] "N:GEXP::RGMA:56963:" "N:GEXP::ROPN1:54763:"
## [1281] "N:GEXP::ROPN1B:152015:" "N:GEXP::ELF5:2001:"
## [1283] "N:GEXP::VGLL1:51442:" "N:GEXP::TMEM139:135932:"
## [1285] "N:GEXP::KRT23:25984:" "N:GEXP::CHST6:4166:"
## [1287] "N:GEXP::SLC6A2:6530:" "N:GEXP::FOXC2:2303:"
## [1289] "N:GEXP::MTCH1:23787:" "N:GEXP::RNF8:9025:"
## [1291] "N:GEXP::C6orf106:64771:" "N:GEXP::KLK6:5653:"
## [1293] "N:GEXP::KLK8:11202:" "N:GEXP::KLK5:25818:"
## [1295] "N:GEXP::C2orf71:388939:" "N:GEXP::CRYAB:1410:"
## [1297] "N:GEXP::E2F2:1870:" "N:GEXP::SLC7A5:8140:"
## [1299] "N:GEXP::SMOC1:64093:" "N:GEXP::PPARGC1A:10891:"
## [1301] "N:GEXP::NDRG4:65009:" "N:GEXP::RLBP1:6017:"
## [1303] "N:GEXP::ZNF280A:129025:" "N:GEXP::TFCP2L1:29842:"
## [1305] "N:GEXP::KCNK5:8645:" "N:GEXP::KLK10:5655:"
## [1307] "N:GEXP::EDAR:10913:" "N:GEXP::FZD7:8324:"
## [1309] "N:GEXP::DKC1:1736:" "N:GEXP::IRAK1:3654:"
## [1311] "N:GEXP::PSMB2:5690:" "N:GEXP::YARS:8565:"
## [1313] "N:GEXP::CDC25B:994:" "N:GEXP::C6orf150:115004:"
## [1315] "N:GEXP::CXCL10:3627:" "N:GEXP::OPTN:10133:"
## [1317] "N:GEXP::APOBEC3B:9582:" "N:GEXP::CDC42EP1:11135:"
## [1319] "N:GEXP::SCARB1:949:" "N:GEXP::CDK18:5129:"
## [1321] "N:GEXP::RNASEH1:246243:" "N:GEXP::CPSF3:51692:"
## [1323] "N:GEXP::SOX11:6664:" "N:GEXP::DNMT3B:1789:"
## [1325] "N:GEXP::TMEM206:55248:" "N:GEXP::TUBB:203068:"
## [1327] "N:GEXP::STMN1:3925:" "N:GEXP::TAF11:6882:"
## [1329] "N:GEXP::BTF3L4:91408:" "N:GEXP::LRP8:7804:"
## [1331] "N:GEXP::GART:2618:" "N:GEXP::DONSON:29980:"
## [1333] "N:GEXP::MTHFD2:10797:" "N:GEXP::FBXO5:26271:"
## [1335] "N:GEXP::FAM54A:113115:" "N:GEXP::TCP1:6950:"
## [1337] "N:GEXP::CDC7:8317:" "N:GEXP::MCM2:4171:"
## [1339] "N:GEXP::MCM6:4175:" "N:GEXP::MCM3:4172:"
## [1341] "N:GEXP::NDC80:10403:" "N:GEXP::TYMS:7298:"
## [1343] "N:GEXP::CTPS:1503:" "N:GEXP::EZH2:2146:"
## [1345] "N:GEXP::STIL:6491:" "N:GEXP::CDCA8:55143:"
## [1347] "N:GEXP::ORC1L:4998:" "N:GEXP::RAD54L:8438:"
## [1349] "N:GEXP::KIF2C:11004:" "N:GEXP::CHEK1:1111:"
## [1351] "N:GEXP::CCDC77:84318:" "N:GEXP::FOXM1:2305:"
## [1353] "N:GEXP::RAD51AP1:10635:" "N:GEXP::TAF5:6877:"
## [1355] "N:GEXP::CDCA7:83879:" "N:GEXP::CDC25A:993:"
## [1357] "N:GEXP::SKP2:6502:" "N:GEXP::RFC4:5984:"
## [1359] "N:GEXP::GMPS:8833:" "N:GEXP::AURKAPS1:6791:"
## [1361] "N:GEXP::SLC6A11:6538:" "N:GEXP::B3GNT5:84002:"
## [1363] "N:GEXP::SFRS13B:135295:" "N:GEXP::FAM171A1:221061:"
## [1365] "N:GEXP::SRPK1:6732:" "N:GEXP::E2F3:1871:"
## [1367] "N:GEXP::MCM10:55388:" "N:GEXP::GTPBP4:23560:"
## [1369] "N:GEXP::CDCA2:157313:" "N:GEXP::ILF2:3608:"
## [1371] "N:GEXP::ANP32E:81611:" "N:GEXP::HTATIP2:10553:"
## [1373] "N:GEXP::PSMD14:10213:" "N:GEXP::EPCAM:4072:"
## [1375] "N:GEXP::MDH1:4190:" "N:GEXP::ATP5C1:509:"
## [1377] "N:GEXP::PDHA1:5160:" "N:GEXP::C11orf75:56935:"
## [1379] "N:GEXP::CEBPB:1051:" "N:GEXP::HMGA1:3159:"
## [1381] "N:GEXP::ECE2:9718:" "N:GEXP::LOC339674:339674:"
## [1383] "N:GEXP::RASAL1:8437:" "N:GEXP::CDK2AP1:8099:"
## [1385] "N:GEXP::BCL11A:53335:" "N:GEXP::FOXC1:2296:"
## [1387] "N:GEXP::YBX1:4904:" "N:GEXP::BTG3:10950:"
## [1389] "N:GEXP::CDKN2A:1029:" "N:GEXP::GSTP1:2950:"
## [1391] "N:GEXP::C6orf115:58527:" "N:GEXP::NRBF2:29982:"
## [1393] "N:GEXP::MPP6:51678:" "N:GEXP::GARS:2617:"
## [1395] "N:GEXP::EIF2S2:8894:" "N:GEXP::MARS:4141:"
## [1397] "N:GEXP::IMPA2:3613:" "N:GEXP::ELAVL2:1993:"
## [1399] "N:GEXP::ART3:419:" "N:GEXP::C6orf162:57150:"
## [1401] "N:GEXP::HMGN4:10473:" "N:GEXP::IGF2BP3:10643:"
## [1403] "N:GEXP::SLC22A16:85413:" "N:GEXP::POU4F1:5457:"
## [1405] "N:GEXP::SLC6A15:55117:" "N:GEXP::MYBBP1A:10514:"
## [1407] "N:GEXP::C12orf24:29902:" "N:GEXP::MYC:4609:"
## [1409] "N:GEXP::DNER:92737:" "N:GEXP::TMCC2:9911:"
## [1411] "N:GEXP::OLFM2:93145:" "N:GEXP::ARHGAP22:58504:"
## [1413] "N:GEXP::TUBA1A:7846:" "N:GEXP::CDK12:51755:"
## [1415] "N:GEXP::ERBB2:2064:" "N:GEXP::PGAP3:93210:"
## [1417] "N:GEXP::STARD3:10948:" "N:GEXP::C17orf37:84299:"
## [1419] "N:GEXP::GRB7:2886:" "N:GEXP::RPL19:6143:"
## [1421] "N:GEXP::CDC6:990:" "N:GEXP::RARA:5914:"
## [1423] "N:GEXP::TOP2A:7153:" "N:GEXP::CEACAM5:1048:"
## [1425] "N:GEXP::DMRTC2:63946:" "N:GEXP::AMBP:259:"
## [1427] "N:GEXP::C20orf26:26074:" "N:GEXP::DDIT4L:115265:"
## [1429] "N:GEXP::NR0B1:190:" "N:GEXP::MAOB:4129:"
## [1431] "N:GEXP::BAMBI:25805:" "N:GEXP::ASPH:444:"
## [1433] "N:GEXP::PEG3:5178:" "N:GEXP::C3orf57:165679:"
## [1435] "N:GEXP::NPTX1:4884:" "N:GEXP::C2orf50:130813:"
## [1437] "N:GEXP::CST9:128822:" "N:GEXP::DDB1:1642:"
## [1439] "N:GEXP::RTN3:10313:" "N:GEXP::DHCR7:1717:"
## [1441] "N:GEXP::FADS2:9415:" "N:GEXP::SCD:6319:"
## [1443] "N:GEXP::HSP90AA1:3320:" "N:GEXP::HSPH1:10808:"
## [1445] "N:GEXP::HSP90AB1:3326:" "N:GEXP::HSPD1:3329:"
## [1447] "N:GEXP::STAMBP:10617:" "N:GEXP::YWHAG:7532:"
## [1449] "N:GEXP::LARP1:23367:" "N:GEXP::CANX:821:"
## [1451] "N:GEXP::TXNRD1:7296:" "N:GEXP::PTGES3:10728:"
## [1453] "N:GEXP::ATP5B:506:" "N:GEXP::CS:1431:"
## [1455] "N:GEXP::GNPNAT1:64841:" "N:GEXP::VDAC1:7416:"
## [1457] "N:GEXP::HSPA9:3313:" "N:GEXP::CSE1L:1434:"
## [1459] "N:GEXP::YWHAB:7529:" "N:GEXP::EIF2C2:27161:"
## [1461] "N:GEXP::MYBL1:4603:" "N:GEXP::PTDSS1:9791:"
## [1463] "N:GEXP::CHMP4C:92421:" "N:GEXP::EIF3E:3646:"
## [1465] "N:GEXP::E2F5:1875:" "N:GEXP::MTFR1:9650:"
## [1467] "N:GEXP::ARMC1:55156:" "N:GEXP::TRAM1:23471:"
## [1469] "N:GEXP::SQLE:6713:" "N:GEXP::C8orf76:84933:"
## [1471] "N:GEXP::TTC35:9694:" "N:GEXP::DSCC1:79075:"
## [1473] "N:GEXP::ATAD2:29028:" "N:GEXP::WDR67:93594:"
## [1475] "N:GEXP::RAD21:5885:" "N:GEXP::ESRP1:54845:"
## [1477] "N:GEXP::RAD54B:25788:" "N:GEXP::YWHAZ:7534:"
## [1479] "N:GEXP::LAPTM4B:55353:" "N:GEXP::UBA1:7317:"
## [1481] "N:GEXP::CDK4:1019:" "N:GEXP::PIR:8544:"
## [1483] "N:GEXP::BIRC5:332:" "N:GEXP::TK1:7083:"
## [1485] "N:GEXP::LDHA:3939:" "N:GEXP::PGK1:5230:"
## [1487] "N:GEXP::GPI:2821:" "N:GEXP::PKM2:5315:"
## [1489] "N:GEXP::GHITM:27069:" "N:GEXP::PPIF:10105:"
## [1491] "N:GEXP::ATP5A1:498:" "N:GEXP::SLC25A3:5250:"
## [1493] "N:GEXP::RAB7A:7879:" "N:GEXP::COPG:22820:"
## [1495] "N:GEXP::C3orf26:84319:" "N:GEXP::C3orf37:56941:"
## [1497] "N:GEXP::CNBP:7555:" "N:GEXP::GNAS:2778:"
## [1499] "N:GEXP::C20orf108:116151:" "N:GEXP::MGST1:4257:"
## [1501] "N:GEXP::PGRMC1:10857:" "N:GEXP::SLC25A5:292:"
## [1503] "N:GEXP::HERPUD1:9709:" "N:GEXP::IYD:389434:"
## [1505] "N:GEXP::FDFT1:2222:" "N:GEXP::AADAT:51166:"
## [1507] "N:GEXP::C6orf223:221416:" "N:GEXP::FKBP5:2289:"
## [1509] "N:GEXP::HPGD:3248:" "N:GEXP::ACSS3:79611:"
## [1511] "N:GEXP::ALOX15B:247:" "N:GEXP::UGT2B28:54490:"
## [1513] "N:GEXP::ACSM1:116285:" "N:GEXP::ACSF2:80221:"
## [1515] "N:GEXP::TMEM45B:120224:" "N:GEXP::PAPSS2:9060:"
## [1517] "N:GEXP::GOT2:2806:" "N:GEXP::CDH1:999:"
## [1519] "N:GEXP::GINS2:51659:" "N:GEXP::CYB5B:80777:"
## [1521] "N:GEXP::AARS:16:" "N:GEXP::PSMD12:5718:"
## [1523] "N:GEXP::KPNA2:3838:" "N:GEXP::METTL2A:339175:"
## [1525] "N:GEXP::EME1:146956:" "N:GEXP::EPN3:55040:"
## [1527] "N:GEXP::VCP:7415:" "N:GEXP::MNAT1:4331:"
## [1529] "N:GEXP::EIF2S1:1965:" "N:GEXP::MTHFD1:4522:"
## [1531] "N:GEXP::CPSF2:53981:" "N:GEXP::DDX24:57062:"
## [1533] "N:GEXP::SPAG5:10615:" "N:GEXP::TMEM97:27346:"
## [1535] "N:GEXP::TMEM106C:79022:" "N:GEXP::ARL6IP1:23204:"
## [1537] "N:GEXP::NPM1:4869:" "N:GEXP::RANBP17:64901:"
## [1539] "N:GEXP::C9orf140:89958:" "N:GEXP::TUBA1B:10376:"
## [1541] "N:GEXP::TUBA1C:84790:" "N:GEXP::H2AFZ:3015:"
## [1543] "N:GEXP::CDC45:8318:" "N:GEXP::E2F1:1869:"
## [1545] "N:GEXP::CDT1:81620:" "N:GEXP::CDCA5:113130:"
## [1547] "N:GEXP::FEN1:2237:" "N:GEXP::TACC3:10460:"
## [1549] "N:GEXP::PTTG1:9232:" "N:GEXP::UBE2C:11065:"
## [1551] "N:GEXP::CDCA3:83461:" "N:GEXP::TROAP:10024:"
## [1553] "N:GEXP::PLK1:5347:" "N:GEXP::AURKB:9212:"
## [1555] "N:GEXP::CDC20:991:" "N:GEXP::CKS1B:1163:"
## [1557] "N:GEXP::PSRC1:84722:" "N:GEXP::GPSM2:29899:"
## [1559] "N:GEXP::CKS2:1164:" "N:GEXP::C9orf40:55071:"
## [1561] "N:GEXP::KIF18B:146909:" "N:GEXP::KIFC1:3833:"
## [1563] "N:GEXP::IQGAP3:128239:" "N:GEXP::GTSE1:51512:"
## [1565] "N:GEXP::WDR62:284403:" "N:GEXP::FANCA:2175:"
## [1567] "N:GEXP::CENPN:55839:" "N:GEXP::SHCBP1:79801:"
## [1569] "N:GEXP::ORC6L:23594:" "N:GEXP::CENPA:1058:"
## [1571] "N:GEXP::TPX2:22974:" "N:GEXP::SKA1:220134:"
## [1573] "N:GEXP::MELK:9833:" "N:GEXP::CEP55:55165:"
## [1575] "N:GEXP::SKA3:221150:" "N:GEXP::HJURP:55355:"
## [1577] "N:GEXP::KIF20A:10112:" "N:GEXP::DLGAP5:9787:"
## [1579] "N:GEXP::TTK:7272:" "N:GEXP::NCAPG:64151:"
## [1581] "N:GEXP::CCNB2:9133:" "N:GEXP::KIF23:9493:"
## [1583] "N:GEXP::NUSAP1:51203:" "N:GEXP::BUB1B:701:"
## [1585] "N:GEXP::C15orf23:90417:" "N:GEXP::RAD51:5888:"
## [1587] "N:GEXP::MYBL2:4605:" "N:GEXP::AURKA:6790:"
## [1589] "N:GEXP::C5orf34:375444:" "N:GEXP::TRIP13:9319:"
## [1591] "N:GEXP::CCT5:22948:" "N:GEXP::NUF2:83540:"
## [1593] "N:GEXP::NEK2:4751:" "N:GEXP::UBE2T:29089:"
## [1595] "N:GEXP::CCDC99:54908:" "N:GEXP::HMMR:3161:"
## [1597] "N:GEXP::SPC25:57405:" "N:GEXP::DEPDC1B:55789:"
## [1599] "N:GEXP::CCNB1:891:" "N:GEXP::CDC25C:995:"
## [1601] "N:GEXP::RACGAP1P:83956:" "N:GEXP::NEIL3:55247:"
## [1603] "N:GEXP::HMGB2:3148:" "N:GEXP::MLF1IP:79682:"
## [1605] "N:GEXP::DNAJC9:23234:" "N:GEXP::CDK1:983:"
## [1607] "N:GEXP::ZWINT:11130:" "N:GEXP::C9orf100:84904:"
## [1609] "N:GEXP::ASF1B:55723:" "N:GEXP::C16orf75:116028:"
## [1611] "N:GEXP::GINS3:64785:" "N:GEXP::RRM2:6241:"
## [1613] "N:GEXP::POLE2:5427:" "N:GEXP::PPIL5:122769:"
## [1615] "N:GEXP::CDKN3:1033:" "N:GEXP::PARP2:10038:"
## [1617] "N:GEXP::MSI1:4440:" "N:GEXP::GGH:8836:"
## [1619] "N:GEXP::CCNE2:9134:" "N:GEXP::MCM4:4173:"
## [1621] "N:GEXP::RFC3:5983:" "N:GEXP::DTL:51514:"
## [1623] "N:GEXP::E2F7:144455:" "N:GEXP::TIMELESS:8914:"
## [1625] "N:GEXP::ESPL1:9700:" "N:GEXP::RACGAP1:29127:"
## [1627] "N:GEXP::NCAPG2:54892:" "N:GEXP::CLSPN:63967:"
## [1629] "N:GEXP::ZNF367:195828:" "N:GEXP::MCM8:84515:"
## [1631] "N:GEXP::GINS1:9837:" "N:GEXP::PCNA:5111:"
## [1633] "N:GEXP::TTF2:8458:" "N:GEXP::XRCC2:7516:"
## [1635] "N:GEXP::CIT:11113:" "N:GEXP::GAS2L3:283431:"
## [1637] "N:GEXP::TMPO:7112:" "N:GEXP::ARHGAP11B:89839:"
## [1639] "N:GEXP::ARHGAP11A:9824:" "N:GEXP::CASC5:57082:"
## [1641] "N:GEXP::KIF20B:9585:" "N:GEXP::GEN1:348654:"
## [1643] "N:GEXP::SMC6:79677:" "N:GEXP::C6orf167:253714:"
## [1645] "N:GEXP::HELLS:3070:" "N:GEXP::BLM:641:"
## [1647] "N:GEXP::PRC1:9055:" "N:GEXP::C15orf42:90381:"
## [1649] "N:GEXP::MAD2L1:4085:" "N:GEXP::CCNA2:890:"
## [1651] "N:GEXP::PLK4:10733:" "N:GEXP::NCAPH:23397:"
## [1653] "N:GEXP::EXO1:9156:" "N:GEXP::ERCC6L:54821:"
## [1655] "N:GEXP::KIF4A:24137:" "N:GEXP::CKAP2L:150468:"
## [1657] "N:GEXP::BUB1:699:" "N:GEXP::KIF11:3832:"
## [1659] "N:GEXP::MKI67:4288:" "N:GEXP::CENPE:1062:"
## [1661] "N:GEXP::KIF15:56992:" "N:GEXP::SGOL1:151648:"
## [1663] "N:GEXP::FAM83D:81610:" "N:GEXP::DEPDC1:55635:"
## [1665] "N:GEXP::ANLN:54443:" "N:GEXP::E2F8:79733:"
## [1667] "N:GEXP::C11orf82:220042:" "N:GEXP::C1orf124:83932:"
## [1669] "N:GEXP::CENPL:91687:" "N:GEXP::KIF14:9928:"
## [1671] "N:GEXP::ASPM:259266:" "N:GEXP::CENPF:1063:"
## [1673] "N:GEXP::C1orf96:126731:" "N:GEXP::BRCA2:675:"
## [1675] "N:GEXP::SMC4:10051:" "N:GEXP::ECT2:1894:"
## [1677] "N:GEXP::TOPBP1:11073:" "N:GEXP::RNF168:165918:"
## [1679] "N:GEXP::HLTF:6596:" "N:GEXP::IARS:3376:"
## [1681] "N:GEXP::ITPR3:3710:" "N:GEXP::CPOX:1371:"
## [1] "Distance metric = euclidean . Method = complete"
# this code chunk likely won't work because we have a lot of annot bars on left side
# look up if in hallmark mappings table
n_hallmarks <- c() # exploratory
pooled_hallmarks <- c() # exploratory
hallmark_vect <- c()
for (feature in ftnames_order){
# 1. Preprocess - to gene symbol
GENE <- unlist(strsplit(feature, '::'))[2]
GENE <- unlist(strsplit(GENE, ':'))[1]
# 2. Hallmark Mapping
halls <- mappings[mappings$human_gene_symbol==GENE,]$gs_name %>% as.vector()
# Multiple Hallmarks
n_hallmarks <- c(n_hallmarks, length(halls))
pooled_hallmarks <- c(pooled_hallmarks, halls)
if (length(halls) >1){
hallmark_vect <- c(hallmark_vect, 'multi')
}
# One Hallmark
else if (length(halls) == 1){
hallmark_vect <- c(hallmark_vect, halls)
}
# No Hallmarks
else {
hallmark_vect <- c(hallmark_vect, 'none')
}
}
# 3. Build heatmap
hall_annot <- rowAnnotation(
Hallmark = hallmark_vect,
# col = list(
# Hallmark = c('none' = "black", 'multi' = "gray")
# ),
show_legend = FALSE
)
fig <- Heatmap(
mat2, #each col will have mean 0, sd 1
name = prefix,
cluster_rows = FALSE,
cluster_columns = FALSE,
show_row_names = FALSE,
show_column_names = FALSE,
column_title = 'Samples',
row_title = 'Features',
top_annotation = column_ha,
right_annotation = team_list,
left_annotation = hall_annot
)
draw(fig)
This section requires the previous section to be ran WIP Version 2
# How many hallmarks is a feature associated with?
data <- table(n_hallmarks)
fig <- barplot(data, xlab='', main='Histogram - How many hallmarks is a feature associated with?')
kable(data)
| n_hallmarks | Freq |
|---|---|
| 0 | 953 |
| 1 | 338 |
| 2 | 195 |
| 3 | 101 |
| 4 | 47 |
| 5 | 25 |
| 6 | 12 |
| 7 | 7 |
| 8 | 2 |
| 10 | 2 |
# What hallmarks are fts most often associated with?
data <- sort(table(pooled_hallmarks), decreasing=T)
fig <- barplot(data, xlab='', main='Histogram - What hallmarks are fts most often associated with?')
labs <- names(data)
text(cex=.5, x=fig-.25, y=-1.25, labs, xpd=TRUE, srt=90)
head(data)
## pooled_hallmarks
## HALLMARK_ESTROGEN_RESPONSE_EARLY
## 85
## HALLMARK_ESTROGEN_RESPONSE_LATE
## 84
## HALLMARK_E2F_TARGETS
## 79
## HALLMARK_G2M_CHECKPOINT
## 76
## HALLMARK_MTORC1_SIGNALING
## 57
## HALLMARK_EPITHELIAL_MESENCHYMAL_TRANSITION
## 50
# Upset plot - If no hallmarks then don't include in this upset plot
lt <- list()
for (feature in ftnames_order){
# 1. Preprocess - to gene symbol
GENE <- unlist(strsplit(feature, '::'))[2]
GENE <- unlist(strsplit(GENE, ':'))[1]
# 2. Hallmark Mapping
halls <- mappings[mappings$human_gene_symbol==GENE,] %>% as.data.frame() %>% pull(gs_name)
# 3. create input upset data if at least one hallmark
if (length(halls)>0){
lt[[GENE]]<- halls
}
}
# Upset
print('Overlap fig below: hallmark overlap between features (genes)')
## [1] "Overlap fig below: hallmark overlap between features (genes)"
if (length(lt)>25){
print('pruning - only first 25 MOLECULAR FEATURES due to UpSet limit')
mH = make_comb_mat(lt[1:25], mode='distinct')
UpSet(mH)
} else {
mH = make_comb_mat(lt, mode='distinct')
UpSet(mH)
}
## [1] "pruning - only first 25 MOLECULAR FEATURES due to UpSet limit"
####
# function
####
build_hallmark_vect <- function(hallmark, ftnames_order){
fts_checked <- c() # sanity check
hallmark_present <- c()
for (feature in ftnames_order){
# 1. Preprocess - to gene symbol
GENE <- unlist(strsplit(feature, '::'))[2]
GENE <- unlist(strsplit(GENE, ':'))[1]
# 2. Hallmark Mapping
halls <- mappings[mappings$human_gene_symbol==GENE,]$gs_name %>% as.vector()
# If hallmark present
if (hallmark %in% halls){
i <- match(hallmark, halls)
hallmark_present <- c(hallmark_present, 1)
fts_checked <- c(fts_checked, feature)
}
else {
hallmark_present <- c(hallmark_present, 0)
fts_checked <- c(fts_checked, feature)
}
}
return(hallmark_present)
}
# Find top hallmarks
print('Heatmap below will use these hallmarks (order matches with heatmap)')
## [1] "Heatmap below will use these hallmarks (order matches with heatmap)"
top <- data[1:5]
print(top)
## pooled_hallmarks
## HALLMARK_ESTROGEN_RESPONSE_EARLY HALLMARK_ESTROGEN_RESPONSE_LATE
## 85 84
## HALLMARK_E2F_TARGETS HALLMARK_G2M_CHECKPOINT
## 79 76
## HALLMARK_MTORC1_SIGNALING
## 57
top <- names(top)
vals_1 <- build_hallmark_vect(top[1],ftnames_order)
vals_2 <- build_hallmark_vect(top[2],ftnames_order)
vals_3 <- build_hallmark_vect(top[3],ftnames_order)
vals_4 <- build_hallmark_vect(top[4],ftnames_order)
vals_5 <- build_hallmark_vect(top[5],ftnames_order)
# Build heatmap
hall_annot <- rowAnnotation(
Hallmark_1 = vals_1,
Hallmark_2 = vals_2,
Hallmark_3 = vals_3,
Hallmark_4 = vals_4,
Hallmark_5 = vals_5,
col = list(
Hallmark_1 = c('0' = "white", '1' = "black"),
Hallmark_2 = c('0' = "white", '1' = "black"),
Hallmark_3 = c('0' = "white", '1' = "black"),
Hallmark_4 = c('0' = "white", '1' = "black"),
Hallmark_5 = c('0' = "white", '1' = "black")
),
show_legend = FALSE
)
fig <- Heatmap(
mat2, #each col will have mean 0, sd 1
name = prefix,
cluster_rows = FALSE,
cluster_columns = FALSE,
show_row_names = FALSE,
show_column_names = FALSE,
column_title = 'Samples',
row_title = 'Features',
top_annotation = column_ha,
right_annotation = team_list,
left_annotation = hall_annot
)
draw(fig)